package com.ly.honor.service;

import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ly.honor.entity.Player;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ly.honor.entity.dto.PlayerCreateDTO;
import com.ly.honor.entity.dto.PlayerEditDTO;
import com.ly.honor.entity.dto.PlayerQueryDTO;
import com.ly.honor.entity.vo.PlayerQueryVO;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

/**
* @author 17798
* @description 针对表【bs_player】的数据库操作Service
* @createDate 2022-11-16 11:49:49
*/
public interface PlayerService extends IService<Player> {

    Page<PlayerQueryVO> selectPlayerPage(long pageNum, long pageSize, PlayerQueryDTO playerQueryDTO);

    String upload(MultipartFile file);

    void deletePlayerById(long id);

    void removeBatch(List<Long> idList);

    void insertPlayer(PlayerCreateDTO playerCreateDTO);

    void updatePlayer(PlayerEditDTO playerEditDTO);

    PlayerQueryVO getPlayerById(long id);

    void retirePlayer(List<Long> idList);

    void comebackPlayer(List<Long> idList);

    void exportNowPlayerExcel(HttpServletResponse response);

    void exportRetirePlayerExcel(HttpServletResponse response);

    void importNowPlayerExcel(MultipartFile file);

    List<JSONObject> getPlayerSpread();

    List<PlayerQueryVO> getNowPlayerList();

    List<PlayerQueryVO> getRetirePlayerList();

    List<PlayerQueryVO> getPlayerListByCondition(PlayerQueryDTO playerQueryDTO);
}
